package com.dhj.yygh.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dhj.yygh.model.cmn.Dict;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

public interface DictService extends IService<Dict> {

    /**
     * 根据 id 查询其子 id 对应的数据
     *
     * @param id id 参数
     */
    List<Dict> getChildDataById(Long id);

    /**
     * 数据字典的导出
     *
     * @param resp HttpServletResponse 对象
     */
    void exportDictData(HttpServletResponse resp);


    /**
     * 上传数据字典，保存数据库
     *
     * @param file MultipartFile 类型的文件
     */
    void importDictData(MultipartFile file);


    /**
     * 根据 dictcode 和 value 查询 dict 数据
     *
     * @param dictcode dict
     * @param value    value
     * @return 返回数据
     */
    String getDictDataByDictcodeAndValue(String dictcode, String value);

    /**
     * 根据 value 查询 dict 数据
     *
     * @param value value
     * @return 返回数据
     */
    String getDictByValue(String value);

    /**
     * 根据 dict_code 查询其所有的子节点
     * @param dict_code
     * @return
     */
    List<Dict> getChildByDictCode(String dict_code);
}
